﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using System.Data.Entity;
using PeliGo.DataModel;

namespace PeliGo.BL
{
    public class PromocionBL
    {
        private EntitiesPeliGo datacontext;
        public PromocionBL()
        {
            datacontext =  new EntitiesPeliGo();
        }
        public List<Promocion> ListarPromocion()
        {
            return datacontext.Promocion.Where(x => x.Estado == 1).ToList();
        }
        public IEnumerable<object> ListarPromocionCombo()
        {
            return (from d in datacontext.Promocion
                    where d.Estado == 1
                    select new { d.PromocionId, d.Descripcion }).ToList();
        }
        public Promocion ObtenerPromocion(int PromcionId)
        {
            return datacontext.Promocion.FirstOrDefault(x => x.PromocionId == PromcionId);
        }
        public bool EliminarPromocion(int PromocionId)
        {
            Promocion objPromocion = ObtenerPromocion(PromocionId);

            if (objPromocion != null)
            {
                objPromocion.Estado = 0;
                datacontext.SaveChanges();
                return true;
            }

            return false;
        }
        public void AgregarPromocion(Promocion objPromocion)
        {
            datacontext.Promocion.Add(objPromocion);
            datacontext.SaveChanges();
        }
        public IEnumerable<Promocion> DevolverPromocion()
        {
            return (from t in datacontext.Promocion
                    select t);
        }
    }
}
